package com.example.demo.controller;

import com.example.demo.bean.PageConfig;
import com.example.demo.dto.PageConfigDto;
import com.example.demo.service.PageConfigService;
import com.example.demo.utils.Result;
import lombok.RequiredArgsConstructor;
import org.springframework.beans.BeanUtils;
import org.springframework.web.bind.annotation.*;

import java.util.HashMap;
import java.util.List;

@RestController
@RequestMapping("/page-config")
@RequiredArgsConstructor
public class PageConfigController {


    private final PageConfigService configService;

    @PostMapping
    public Result<Integer> create( @RequestBody PageConfigDto dto) {
        PageConfig c = new PageConfig();
        BeanUtils.copyProperties(dto, c);
        configService.save(c);
        return Result.success(c.getId());
    }



    @GetMapping
    public Result<List<PageConfig>> list(){
        return Result.success(configService.list());
    }



    @PostMapping("/generate")
    public Result<PageConfig> generate(@RequestBody HashMap<String,String> map) throws Exception {
        return Result.success(configService.generate(map));
    }
}
